/**
 * 地图基本配置
 *    入参：BMAP_INIT_OBJ接口中的内容
 *    返参：{ BMAP, map }
 * */
interface BMAP_INIT_OBJ {
  id: string // 地图容器id
  lng: number // 经度
  lat: number // 纬度
  zoom: number // 缩放等级
  options?: any // 初始化地图的配置项
}
export const BMAP_INIT = (BMapObj: BMAP_INIT_OBJ, callback: Function) => {
  const BMAP = window['BMap']
  // 1、创建地图实例
  const map = new BMAP.Map(BMapObj.id, BMapObj.options || {})
  // 2、创建点坐标
  const point = new BMAP.Point(BMapObj.lng, BMapObj.lat)
  // 2、设置地图级别
  map.centerAndZoom(point, BMapObj.zoom)
  // 3、开启鼠标滚轮缩放
  map.enableScrollWheelZoom(true)
  // 4、添加控件 （每一项可接受参数：{anchor:'',offset:''}）
  map.addControl(new BMAP.ScaleControl({ offset: new BMAP.Size(10, 10) })) // 添加比例尺控件
  map.addControl(new BMAP.OverviewMapControl()) // 添加缩略图控件
  // 5、个性化地图
  // map.setMapStyleV2({ styleId: '' })
  callback && callback({ BMAP, map })
}
